import type { Settings } from "http2"
import type { Durl } from "./VideoTyping"

export interface Sections {
    code: number
    data: [SectionsDataOne, SectionsDataTwo]
    message: string
}

export interface SectionsDataOne {
    activity_id: number
    business_type: number
    card_type: number
    ep_id: number
    id: number
    img_url: string
    jump_url: string
    need_login: boolean
    report: { ep_id: number, order_id: number, season_id: number }
    season_id: number
    title: string
    title_color: string
    unique_id: string
}

export interface SectionsDataTwo {
    selected_button: { end_color: string, start_color: string, title: string, title_color: string }
    selected_img_url: string
    selected_show_time: number
    show_selected: boolean
    title: string
    title_color: string
    to: number
    unique_id: string
    unselectedSubText: string
    unselected_button: { end_color: string, start_color: string, title: string }
    unselected_disappear_time: number
}

export interface DefaultMainSection {
    code: number
    message: string
    result: { main_section: MainSection, section: Array<MainSection> }
}

export interface MainSection {
    episodes: Array<Episodes>
    id: number
    title: string
    type: number
}

export interface Episodes {
    aid: number
    badge: string
    badge_info: { bg_color: string, bg_color_night: string, text: string }
    badge_type: number
    cid: number
    cover: string
    from: string
    id: number
    is_premiere: number
    long_title: string
    share_url: string
    status: number
    title: string
    vid: string
}

export interface DefaultFData {
    code: number
    result: {
        durl: Array<Durl>
        timelength: number
    }
    message: string
}

export interface DefaultIntroduction {
    code: number
    message: string
    result: FIntroduction
}

export interface FIntroduction {
    new_ep: {
        desc: string
    }
    evaluate: string
    title: string
    cover: string
    stat: {
        views: number
        favorites: number
    }
    rating: {
        count: number
        score: number
    }

}

export interface DefalutFRecommend {
    data: {
        season: Array<RecommendSeason>
    }
}

export interface RecommendSeason {
    stat: {
        danmaku: number
        follow: number
        view: number
    }
    new_ep: {
        cover: string
    }
    title: string
    url: string
    season_id: number
}


export interface DefalutReallySeason {
    code: number
    message: string
    result: {
        season_id: number
    }
}

export interface DefalutDanMu {
    __text: string
    _p: Array<string> | string
    is?: number
    isAdd?: boolean
}

export interface DanMuI {
    i: {
        d: Array<DefalutDanMu>
    }
}

export interface Bvid {
    data: {
        bvid: string
    }
}